home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CD ROM Paradise Collection 4
/
CD ROM Paradise Collection 4 1995 Nov.iso
/
system
/
xpcmou10.zip
/
xpcmouse.doc
< prev
next >
Wrap
Text File
|
1994-12-16
|
34KB
|
749 lines
XPCMOUSE.DOC
documentation for xPC-Mouse Version 1.0: 3-Dec-1994
Position Cursor, Copy and Paste in Dos Text Mode
Copyright (c) 1994 by Jürgen G. Weber and Grant B. Gustafson.
ALL RIGHTS RESERVED
NO COST?
This software is provided free of charge to individuals and educational
institutions. Money is not requested.
Free for personal use under the Gnu Public License agreement, which
is distributed with this source.
POSTCARDS?
Postcards and comments are welcome!
Jürgen G. Weber GB Gustafson
Wiesentalstraße 1 113 JWB Math Dept Univ Utah
D-74523 Schwäbisch Hall Salt Lake City, UT 84112
Germany - European Union USA
NO WARRANTY.
The authors do not warrant the correctness of the documentation or the
function of the program. They do not warrant uninterrupted or error free
operation of the Program.
The user is advised to test the program fully. The risk of using this
software is exclusively with the user. The author assumes no liability
whatever for damages of any kind that might result from using the
program.
Cited product names are trade names.
========================== GNU PUBLIC LICENSE ==========================
This software is released as copyrighted material under the GNU
PUBLIC LICENSE:
NO WARRANTY
Because xPC-Mouse is licensed free of charge, absolutely no warranty
is provided, to the extent permitted by applicable state law. Except
when otherwise stated in writing, Jürgen G. Weber and Grant B.
Gustafson provides xPC-Mouse "as is" without warranty of any kind,
either expressed or implied, including, but not limited to, the
implied warranties of merchantability and fitness for a particular
purpose. The entire risk as to the quality and performance of the
program is with you. Should the xPC-Mouse program prove defective,
you assume the cost of all necessary servicing, repair or correction.
In no event unless required by applicable law will Grant B. Gustafson
and Jürgen G. Weber and/or any other party who may modify and
redistribute xPC-Mouse be liable to you for damages, including any
lost profits, lost monies, or other special, incidental or
consequential damages arising out of the use or inability to use
(including but not limited to loss of data or data being rendered
inaccurate or losses sustained by third parties or a failure of the
program to operate with programs not distributed by Grant B.
Gustafson and Jürgen G. Weber) the program, even if you have been
advised of the possibility of such damages, or for any claim by any
other party.
============================= INTRODUCTION =============================
The TSR program xPC-Mouse enables Position, Copy and Paste in the text
modes of PC video cards. Programs that use the mouse themselves work as
usual and ignore the presence of xPC-Mouse.
REMOTE UNIX HOST
A useful installation of xPC-Mouse is on a DOS machine running
MS-kermit 3.xxx over a 9600/14400 baud modem to a remote unix host.
Most of the very useful mouse functions familiar to Xterm users will be
available, especially double-click and paste for unix file names,
cursor positioning on the command line and in text editors (emacs, vi,
jove, jed, pi), and copy/paste of local text and remote host text.
LOCAL COPY/PASTE
Local use on a PC includes the familiar need to capture error messages
off the screen, to be pasted into a text editor, or the copying of file
names, to be pasted on to the command line. Unix users of Xwindows will
find the mouse functions useful and natural.
PC EDITORS
Most PC text editors can use xPC-Mouse to position the cursor and
copy/paste small selections of text. This is especially useful in
special-purpose editors, like the Czech TeX User's group editor called
CSED, which uses the Latin II character set. The xPC-Mouse TSR works
with this editor in text mode, for example, EGA monochrome. Similar
statements apply to epsilon, emacs, qedit, jed, pi, and vi clones. The
Xterm mode can be used with extensible editors to produce a seamless
interface to the editor's own copy/cut/paste/position functions.
======================= HARDWARE/SOFTWARE NEEDED =======================
HARDWARE
8088 CPU or better (80286, 80386, 80486)
Modern Bios (1985 or later), IBM compatible
Microsoft compatible mouse with 2 or 3 buttons
SOFTWARE
New mouse device driver MOUSE.SYS, e.g., from MS Windows
Normally loaded from the file CONFIG.SYS. See below.
MS-DOS compatible operating system
Tested with MS-DOS 5.0, SoftPC on a SUN4, OS/2 2.x Dos Emulation.
CONFIG.SYS and AUTOEXEC.BAT
There must be a line DEVICE=MOUSE.SYS or similar, unless a TSR program
load of MOUSE.EXE or MOUSE.COM appears in AUTOEXEC.BAT.
Recommended is a line STACKS=9,256 because of the patch to int 21h
function 4bh. See STACKS below and the discussion of interrupts. Most
systems run with the MSDOS default STACKS. Problems may emerge with
deeply nested batch files but not with ordinary operation.
WINDOWS
The action taken by windows is to disable any mouse hooks when it
starts. So don't expect xPC-Mouse to work inside windows. It WILL work
in a full screen DOS window. It is especially NOT RECOMMENDED to load
xPC-Mouse in a DOS window --- load it in DOS BEFORE entering windows.
If previously loaded, then attempts to load it again will fail, which
is exactly what you would want in Windows.
In particular, if you like to run kermit from Windows and like
xPC-Mouse to be there, then load xPC-Mouse from the DOS prompt before
entering windows.
xPC-Mouse complains if you lack anything essential. The error messages
are explained below in a separate section.
=============================== PACKAGE ================================
The package consists of:
XPCMOUSE DOC : the file you are reading
XPCMOUSE ASM : Source code for TASM/TLINK (Borland Intl)
XPCMOUSE EXE : xPC-Mouse executable for DOS (a TSR program)
============================HOW TO USE xPC-Mouse==========================
Typical command lines:
XPCMOUSE /a2 Use matrix method for cursor
positioning (default is /A1)
loadhigh XPCMOUSE Use UMB's to save lower memory.
XPCMOUSE /H Display mouse button assignments
If xPC-Mouse is not installed and ? appears on the command line, then it
aborts installation and prints the help screen:
xPC-Mouse, version 1.0: 3 Dec 1994
Copyright (c) 1994 Jürgen G. Weber and G.B. Gustafson
Free for personal use under the Gnu license agreement.
Options: /U : Un-install xPC-Mouse
/Q : Quiet, no messages
/R : Re-activate xPC-Mouse
/M : Monochrome video mode (equals /X119)
/Xddd : Highlight XOR mask ddd (default /X80)
/Bddd : Buffer size ddd paragraphs (16*ddd bytes)
/T : Enable timer int 1Ch patch
/N : Defeat int 21h patch
/P : Defeat pastebuffer use
/K : Defeat arrow key emulation
/A1 : Emacs/vi arrow key method (default)
/A2 : Matrix arrow key method
/A3 : Xterm escape sequence method
Info: /C : Display copying information
/? : Display help text
/H : Display mouse button assigments
If xPC-Mouse was already installed, or this is the first install, then
the appropriate message is displayed, for example:
xPC-Mouse, version 1.0: 3 Dec 1994
Copyright (c) 1994 Jürgen G. Weber and G.B. Gustafson
Free for personal use under the Gnu license agreement.
Info: /C : Display copying information
/? : Display help text
/H : Display mouse button assigments
MOUSE BUTTON FUNCTION
Mouse 1 (1/6 second) ... Position cursor
Mouse 2 ................ Paste text
Drag Mouse 1 ........... Copy text
Double-click Mouse 1 ... Copy word
CTRL-Mouse 2 ........... Paste text + ENTER
ALT-Mouse 2 ............ Mouse 3 duplicate
SHIFT-Mouse 1 .......... Cursor feature on/off
SHIFT-ALT-Mouse 1 ...... Toggle methods /A1-/A3
SHIFT-Mouse 2 .......... Paste feature on/off
xPC-Mouse was already installed.
If you do not use the mouse you will see no sign of xPC-Mouse being
present. When you move the mouse, the mouse cursor appears. It gets
hidden again as soon as the next character is displayed on screen.
=========================== COMPILER EXAMPLE ===========================
Example. Use xPC-Mouse to drag compiler error messages into an editor.
The compiler is run as an editor shell. The messages appear on the
screen, but are lost as soon it the editor is re-entered:
Assembling file: TEST.ASM
**Error** TEST.ASM(165) Undefined symbol: MAINEXIT
**Error** TEST.ASM(190) Undefined symbol: EXITLOOP1
Error messages: 2
Warning messages: None
Remaining memory: 470k
Solution: Copy the text needed into the paste buffer using the mouse.
Pop back into the text editor and paste the copied text into
a scratch buffer or as comments at the top of the current
source file. The messages can be analyzed from the
reference.
========================== DIRECTORY EXAMPLE ===========================
Example. Use xPC-Mouse to copy a directory listing into an editor.
Most editors allow a shell to DOS to do a directory, but offer no
features for pasting the information back into the file being
edited. With xPC-Mouse, copy the desired text to the paste buffer and
re-enter the editor. Then paste with the mouse.
========================= COMMAND LINE EXAMPLE =========================
Example. Use xPC-Mouse to copy and paste file names onto the command
line.
Many command lines take several file names, usually already on the
screen due to a directory listing. GNU software like "ls" is useful
for displaying the filenames in a compact and directly usable format.
The method used with xPC-Mouse is to DOUBLE-CLICK on a file name. That
places the file name in the paste buffer. Then press the right mouse
button to paste onto the command line.
=========================== MOUSE OPERATIONS ===========================
HIGHLIGHT text by dragging the left button.
To select a text area move the mouse cursor to the beginning of the
area. Keep the left button pressed and move over the area you want to
select. When you release the left button the selected text is copied to
xPC-Mouse's internal buffer. If you select a new screen area the internal
buffer is overwritten.
DOUBLE-CLICK on the left button highlights one word.
If the mouse cursor is on a word you can select it by double clicking
the left button. A word is a sequence of letters, digits, the underline
character and European special letters (IBM ascii values 80h to 0a5h,
0e0h to 0ebh). This TSR has been coded to accept most unix file names.
PASTE the highlighted text by clicking the right button.
Press the right mouse button to simulate the content of the buffer being
typed at the keyboard. If you keep the CONTROL key pressed while
pressing the right button, an additional pressing of ENTER is simulated.
SET CURSOR by pressing the left button 1/6 second.
If you press and release the left button without selecting an area the
cursor is positioned to that location, by stuffing the keyboard buffer
with appropriate arrow keys. However, the press must be 1/6 second or
longer before release, or nothing happens. This is how double-click is
distinguished from just a left button press intended to position the
cursor.
TOGGLE the set cursor feature by pressing SHIFT left button
The set cursor function can sometimes send unwanted characters to a
program. Hold down the SHIFT and press the left button, then
release both, to toggle the feature on/off. The copy and paste will both
work with the set cursor function defeated. To disable the set cursor at
startup, use the /K option on the command line (see below).
TOGGLE the paste feature by pressing SHIFT right button
The paste function can sometimes send unwanted characters to a program.
Hold down the SHIFT and press the right button, then release both, to
toggle the feature on/off. The cursor positioning functions will still
work with the copy/paste functions defeated. To disable the copy/paste
at startup, use the /P option on the command line (see below).
TOGGLE the /A1-/A3 options by pressing SHIFT-ALT left button
These methods can be selected at startup (/A1 is the default). Some
remote applications may not use the method effectively, e.g., menu
systems such as found in GOPHER on the internet will not respond
properly to /A1 or /A3. The options are toggled one at a time in the
order
/A1 --> /A2 --> /A3 --> /A1
The methods /A1-/A3 can be disabled by the /K option on startup or
changed dynamically by pressing SHIFT button 1.
Transmit Button 3 by pressing ALT button 2
Some remote applications may need a third mouse button press. Even if
you only have a 2-button mouse, this is possible. The third button on a
3-button mouse (usually the middle button) does the same thing as ALT
button 2.
DE-SELECTION. The selected area is de-selected as soon as you press the
left key again or if anything is displayed on the screen. This is done
because the programs you run don't know anything about the selection.
The de-selecting is done to prevent chaos on the screen. Optical harm
may be caused by xPC-Mouse running together with programs that use page
swaps to achieve fast refresh. It's not dangerous.
MOUSE SUPPORT. If a program offers mouse support itself the mouse
functions of xPC-Mouse lay dormant until the program ends. Clearly not
both can run at the same time, so xPC-Mouse is put in the background by
such programs. After the program exits, xPC-Mouse comes alive again.
=========================== COMMAND LINE OPTIONS ==========================
/U : Un-install xPC-Mouse
Removes mouse driver from memory and resets all affected
interrupt vectors. Finally, it resets the manufacturers
mouse driver.
/Q : Quiet: no messages
All messages omitted on startup.
/R : Re-activate xPC-Mouse
Some programs reset the manufacturers mouse driver and
un-vector previous mouse programs. After exit from them,
xPC-Mouse may need to be restarted.
/Xddd : XOR screen mask ddd (default /X80)
The highlight of a screen area is indicated by XORing the
attribute bytes with ddd=80, to de-select they are simply
XORed again. Normally the XOR mask is 80. A useful one
for monochrome is ddd=119. With ddd=0 you get no visible
selection.
/Bddd : Buffer size ddd paragraphs (16*ddd bytes)
The buffer size can be set to any size less than the
pre-compiled size. The syntax "xPCmouse /B128" sets the
buffer size to 16*128 == 2048 bytes. To use the default
size, no command line option is required. A common
setting is "xPCmouse /B0 /P" which reduces the paste
buffer size to 0 and defeats all pasting operations.
Memory use is reduced by 2k.
/M : Monochrome video mode
Same as /X119. Works on Hercules mono cards.
/N : Defeat int 21h patch
The int 21h patch may interfere with certain software.
Or, system stack may be insufficent to support the
function calls made in this int 21h patch. If you use
this, then /R is required to jump-start xPCMouse after
exit from certain programs.
/T : Enable timer int 1Ah patch
May be needed for certain applications that use strange
keyboard input instead of int 16h or int 21h functions.
/K : Defeat Arrow key emulation
The left button pressed for 1/6 second normally produces
a stuffing of arrow keys to reset the text cursor to the
button press location. This command line option causes
xPC-Mouse to start up with that feature defeated. Holding
the SHIFT key down and pressing the left button toggles
the /K state on/off.
/P : Defeat pastebuffer use
Some applications will not allow pasting, since the
application does it already in response to Xterm
sequences that emulate the mouse buttons. Also used to
simplify logic for paste buffer size 0 (see /B0).
/A1 : Emacs/vi arrow key method (default)
/A2 : Matrix arrow key method
/A3 : Xterm escape sequence method
The matrix method positions the cursor by moving it by
columns first, then by rows. The Emacs method moves the
cursor first to column 0, then the matrix method is
applied. This prevents false positioning due to emacs
character-stream notions of "point". Also works in VI,
JOVE and JED. The Xterm method sends escape sequences
recognized by Xterm as simulations of the mouse. Many
editors already recognize the escapes, but may need
additional support to make full use of the information.
The Xterm support is the best for modem use. See the
technical notes below for more detail.
/C : Display copying information
Prints the author addresses, email addresses and
copyright information for the GNU license agreement.
/? : Display help text
Actually, any nonsense on the command line causes help to
be printed as does any command line containing a question
mark.
/H : Display mouse button assigments
This display can be obtained without loading the TSR. By
default, it is displayed if the driver is already
resident, since in this situation, mouse button
information is more relevant than command line switches.
========================== MONOCHROME CARDS ===========================
On monochrome systems (Hercules compatible cards) you could try option
/X119 to produce a visible selection on screen. The special option /M is
a synonym for /X119. If the command line has no /X or /M options, then a
check is made for for video mode 7 (mono monitor). If found, then the
TSR selects /M automatically.
So switches /X119 or /M are useful only if the computer fools the
software and you need a manual over-ride. This happens, for example, on
laptop computers with mono EGA/VGA. The check for text mode 7 will not
be successful on such hardware.
=========================== TECHNICAL NOTES ============================
KEYBOARD STUFFING /A1 AND /A2.
Cursor keys are stuffed into the keyboard by options /A1 and /A2.
Precisely, the scan codes for these keys are stuffed. Logic is applied
to keep from over-running the keyboard buffer. There are 4 cursor key
scan codes possible. Option /A1 tests to see if the target row is the
same as the present text cursor row. If it isn't, then the text cursor
is first moved to column 1. Option /A1 then moves by the MATRIX METHOD:
move the cursor to the target row, then to the target column. Option /A2
is /A1 with the normalization to column 1 removed; it is the matrix
method.
KEYBOARD STUFFING /A3.
In option /A3, X-Windows X10 compatibility mode is assumed. However,
no escape sequences from DECSET 9 are sent to the host. That is left
to the host program or the user. We stuff an escape sequence on each
button press encoding the location and the mouse button pressed. In this
mode, we assume the keyboard buffer is emptied quickly, in order to
simplify the logic for stuffing 6 or 12 scan codes at once. We don't
know how this works in practise across all machines, let us know!
On button press, xPC-Mouse in mode /A3 sends ESC [ M Cb Cx Cy, a total
of characters, 12 bytes of scan code data. The variables are as
follows:
Symbol Coding Rules
Cb 32 == Button 1 [left button]
33 == Button 2 [right button]
34 == Button 3 [middle button]
Cx 32+X, X == mouse row, 1 <= X <= 25
Cy 32+Y, Y == mouse column, 1 <= Y <= 80
Example: Char Decimal Coded Info
ESC 27 Lead-in byte1
[ 91 Lead-in byte2
M 77 Lead-in byte3
! 33 Button 2
* 42 Row 10
U 85 Col 53
Mouse DRAG holds down the left button with release in a new location.
This results in two escape sequences, the first for button 1 at the
location where the drag began, and the second for button 3, at the
location of release. This sequence can be done without dragging by
pressing button 1 and then ALT-button 2 (alias for button 3, for
2-button mouse).
The Xterm X10 standard for highlighting a region uses a press of button
1 followed by a press of button 3. During this marking stage, no
highlight appears. Editors like Emacs make use of this method under
X-Windows, but indeed highlight the text upon receipt of the button 3
escape. Newer versions of emacs for Xwindows allow mouse drag and
highlighting features.
In any case, the editor must be aware of the button press simulation via
escape sequences. For Emacs, this means that keymaps have been set up
with specific actions, in short, someone has to write the elisp source
to process the escape sequences. Ditto for JOVE, QEDIT, JED and similar
extensible editors. Non-extensible editors have to be extended and
recompiled.
A way to understand /A3 is to imagine each button press resulting in the
transmission of a string, like "HELLO, " for button 1, "WORLD." for
button 2 and " BITTER" for button 3. Then pressing button 1, button 2
and button 3 gives "HELLO, WORLD. BITTER" whereas DRAG on button 1
followed by button 2 gives "HELLO, BITTER WORLD.". (During testing, the
ASM code was modified to do something similar, to allow tracing of
escape sequences.)
PASTE BUFFER.
The paste buffer has space for 2048 characters. The last part is
discarded if the selection is too large. Blanks in a line are compressed
and blanks at the end of a line are discarded. After the last non-blank
of a line xPC-Mouse inserts a CR char to simulate pressing ENTER.
Control characters with ascii values below 32 are not stored in the
buffer and discarded.
The paste buffer size can be increased by changing "BUFFERLEN EQU 2048"
in the ASM source to a larger multiple of 16, e.g., 4096. Then the EXE
file will bump its size by 2k and the initial load of the TSR will have
enough space in its code segment (== data segment) for a 4096 paste
buffer. Dynamic buffer sizing /Bddd allows sizing of the paste buffer
from 0 byte to 4096 bytes, where ddd is the decimal (base 10) value in
paragraphs, i.e., /B192 means buffer size 16*192 or 3072 bytes.
Stuffing of the paste buffer into the keyboard buffer is done by testing
for sufficent space prior to stuffing the character. Ditto for stuffing
cursor keys and Xterm escapes.
INTERRUPTS.
xPC-Mouse hooks interrupts 10h, 1ch, 16h and 21h. We explain each one.
Int 10h is hooked to de-select a selected screen region every time a
program calls int 10h. The decision is made by a code segment variable,
which records whether or not a screen segement has been highlighted.
Int 1ch is hooked to stuff the keyboard buffer on every timer tick, 18.2
per second. This patch affects the pastebuffer and methods /A1, /A2 and
/A3. Initially the patch is defeated. To enable it, use /T on the
command line.
Int 16h is hooked to read from xPC-Mouse's buffer. It also gets a new
function 80h that xPC-Mouse uses to see if it is already installed. This
function modifies register AH by decrementing it and it returns in BX
the offset of the paste buffer, in ES the segment of the paste buffer.
Int 21h is patched in order to keep xPC-Mouse alive after each program
exit. The only int 21h funtion affected is 4bh (exec program).
When a program is executed, int 21h, function 4bh is called, at which
time the patch is invoked. It grabs the far address and event mask of
the installed mouse handler, then saves it on the stack. The mouse
handler for xPC-Mouse is re-installed, just in case COMMAND.COM invoked
the program load. Then the program is run as usual. After exit from the
program, the save mouse routine (on the stack) is activated via int 33h.
So xPC-Mouse works at the normal dos prompt and also with dos shells
started within user programs. The saving of the mouse handler on the
stack is necessary because programs can call each other recursively.
In particular, xPC-Mouse works with COMMANDO and WCED command line
editors. In these programs, xPC-Mouse adds cursor positioning on the
command line, double-click on file names and pasting of file names onto
the command line at the text cursor position.
STACKS SETTING.
But this means xPC-Mouse takes some system stack. So if your system does
not work with xPC-Mouse, try the following in CONFIG.SYS
STACKS=9,256
If that does not help, try option /N. This disables the Int 21h patch.
But this means that if a program uses the mouse itself and does not
restore the previous handler xPC-Mouse is no longer active. So you have
to reactivate xPC-Mouse again using xpcmouse /R
KEYBOARD INTERRUPTS.
Every time a program calls the keyboard interrupt 16h, xPC-Mouse fills
up the keyboard buffer with characters from its internal buffer. As some
programs bypass int 16h and read directly from the keyboard buffer you
can specify option /T so that xPC-Mouse's buffer is stuffed into the
keyboard buffer at every timer tick, too. This option hooks int 1ch. In
general, /T is NOT RECOMMENDED because it steals a lot of CPU time.
UN-INSTALL.
Use option /u to un-install xPC-Mouse. But this is only possible, if
there is no other TSR loaded after xPC-Mouse that hooks the same int
vectors. If LOADHIGH is used to load xPC-Mouse, then /U works in more
situations, eg, you can shell out of a text editor to kill the TSR.
EXTENDED TEXT MODES.
xPC-Mouse believes an extended text mode to be active if a video mode
with a higher mode number than the highest in standard vga (=13h) is
active and if a text page needs between 800h and 4000h bytes.
MEMORY USAGE.
With arrow key emulation and full size paste buffer the size is 4.6k.
xPC-Mouse uses 2k for its text buffer, making resident code sizes of
2.6k to 4.6k possible. There is a sizable non-resident portion of
xPC-Mouse that contains error messages, help screens, etc. These are not
left in memory, therefore the disk size of xPC-Mouse does not tell you
how much memory it uses.
Recompile and editing of xPC-Mouse to remove the paste buffer features
can permanently reduce memory usage to about 2.2k. Since command line
switches are capable of producing memory size 2.6k, there appears to be
no reason to edit and recompile such a special version.
HIGHLIGHTING METHOD.
The selecting of a screen area is indicated by XORing the attribute
bytes with 80, to de-select they are simply XORed again. To use another
value use the /Xddd option. With ddd=0 you get no visible selection.
Value /X119 is recommended for monochrome. See the /M option.
============================ RETURN VALUES ==============================
0 successfully installed
1 hardware/software requirements failed
2 already installed
3 Help request processed, no operations done
=========================== ERROR MESSAGES ==============================
xPC-Mouse was already installed.
Tried to install xPC-Mouse program twice, failure, the program
will not be installed twice.
xPC-Mouse was not installed yet.
Tried to re-install xPC-Mouse, failure, because the program was
not installed.
xPC-Mouse is un-installed.
Successful /U option de-installs xPC-Mouse and frees memory.
xPC-Mouse is re-activated.
Successful /R option resets all interrupt vectors and restarts
the driver.
Could not un-install xPC-Mouse.
Unsuccessful /U option, because another TSR program was installed
after xPC-Mouse, or else something went wrong and address
conflicts were found.
No mouse driver found or driver too old.
The mouse program supplied with the mouse by the manufacturer is
not installed or else has a very old version with missing mouse
driver features. Fix: install the driver in config.sys (then
reboot) or in autoexec.bat (and type the same command line at the
dos prompt). If you can't find one, then search the Windows
directory on a computer with MS-windows. That one might work. If
you own a non-microsoft mouse, then that could be a problem.
xPC-Mouse not installed.
Attempt to install xPC-Mouse in memory failed, due to something
missing, like the mouse driver, or not enough space, or some
conflict.
xPC-Mouse needs at least an 80286 with extended keyboard support.
Attempt to install xPC-Mouse in memory failed, because the driver
was compiled for 286 or better CPU, and this CPU tests out to be
8088 or 8086. Fix: Compile xpcmouse.asm with symbol XT set to
TRUE (see the ASM file). Use that xpcmouse.exe instead of the
present one. NB: The version in the distribution was compiled for
XT. We don't recommend a non-XT compile!
============================== PROBLEMS ==================================
If you leave Borland's TD386 with xPC-Mouse installed it hangs the
computer. When MSDOS 5.0 came out Borland had to distribute a patch for
TD386 because then the same problem occurred. So this seems to be not
xPC-Mouse's problem but TD386's.
It has been reported that xPC-Mouse did not find the mouse driver. This
happens with some old drivers. To solve this problem install a new mouse
driver. A new mouse driver can be found on the Windows disks.
Loading xPC-Mouse from MS-Windows via a full screen DOS window is
possible, but the system may lock up when EXIT is typed at the DOS
prompt. Doing a normal "xpcmouse /U" should stop this from happening.
Similar things happen with all TSR programs run in this manner from
MS-Windows.
The use of xPC-Mouse with Kermit has been tested. There are many
"gotchas" in using this interface with a remote unix system or remote
DOS system. It is often necessary to turn off the mouse actions,
sometimes the paste is off, sometimes the cursor key actions are off.
This is especially true if your favorite editor supports the Xterm
escapes, and you have decided to use that feature in the editor.
=========================== KERMIT and RZ/SZ ===========================
This information is current in November 1994. Directory locations and
FTP sites change with time.
To get a copy of MS Kermit 3.13 or later, use anonymous FTP to
watsun.cc.columbia.edu. Hunt for the right ZIP file and download to your
system.
Also recommended for fast uploads and downloads is SZ/RZ, invoked by
program DSZ.COM from Omen Technology INC. The shareware version is
available from oak.oakland.edu, in directory SimTel/msdos/zmodem.
============================= THE AUTHORS ================================
Jürgen G. Weber is now (1994) a student of computer science at the
university of Stuttgart in southern Germany. He is also author of ZSIM,
a Z80 - CP/M bios emulator that is available from ftp servers.
Grant B. Gustafson is professor of mathematics at the University of Utah
in Salt Lake City. Besides xPC-Mouse, he has written text editors, C
libraries, business programs and mathematical software.
Reproducable bugs in the operation of xPC-Mouse can be sent via email to
the authors.
Postcards and comments are welcome! This is free software!
Jürgen G. Weber GB Gustafson
Wiesentalstraße 1 113 JWB Math Dept Univ Utah
D-74523 Schwäbisch Hall Salt Lake City, UT 84112
Germany - European Union USA
email: weberj@dia.informatik.uni-stuttgart.de
email: gustafson@math.utah.edu
=========== End of File xPC-Mouse. Last edited 16 Dec 1994. ============